package br.com.sge.controle;

import java.util.List;

import br.com.sge.dao.SecretarioDAO;
import br.com.sge.modelo.Secretario;

	public class SecretarioBean 
	{
		private Secretario secretario;
		private List<Secretario> listSecretario;
		private SecretarioDAO secretarioDao = new SecretarioDAO();
		private boolean cadastrarSucesso = false;
		private boolean alterarSucesso = false;
		public SecretarioBean()
		{
			this.secretario = new Secretario();
		}
		
		public void getFiltrarSecretario()
		{
			if(secretario.getIdSecretario()!= 0)
			{
				filtrarSecretarioPorId();
			}
			else if(!secretario.getNome().isEmpty()){
				filtrarSecretarioPorNome();
			}
			
		}
		public Secretario getFiltrarSecretarioLogin()
		{
			this.secretario = (Secretario) secretarioDao.buscarSecretario(secretario.getLogin(),secretario.getSenha()).getSingleResult();
			return this.secretario;
		}
		public Secretario filtrarSecretarioPorId()
		{
			this.secretario = (Secretario) secretarioDao.buscarSecretario(secretario.getIdSecretario());
			return secretario;
		}
		public List<Secretario> filtrarSecretarioPorNome()
		{
			this.listSecretario = (List<Secretario>) secretarioDao.buscarSecretario(this.secretario.getNome(),this.secretario.getOrdemPesquisa()).getResultList();
			return this.listSecretario;
		}
		public List<Secretario> getListaSecretario(){
			
			return this.listSecretario;
		}
		public boolean getSalvar()
		{
			try
			{
				for(Secretario secretario : listSecretario)
				{
					secretarioDao.salvar(secretario);
				}
				this.cadastrarSucesso = true;
			}
			catch(RuntimeException e)
			{
				this.cadastrarSucesso = false;
				e.printStackTrace();
			}
			return this.cadastrarSucesso;
		}
		public boolean getAlterar()
		{
			try
			{
				secretarioDao.alterar(secretario);
				this.alterarSucesso = true;
			}
			catch(RuntimeException e)
			{
				e.printStackTrace();
			}
			return this.alterarSucesso;
		}

}
